This invention relates generally to a method and system for producing and delivering documents having embedded dynamic content. More particularly, the present invention relates to a method and system for producing world wide web page document templates by embedding dynamic tags and flow directives therein, populating the document templates with content stored in a data source, and delivering the populated documents over the Internet to clients requesting them.
The last few years has seen a rapid increase in usage of the worldwide network known as the Internet. This increase is particularly significant in the commercial arena. More and more businesses are recognizing the commercial potential for marketing, selling, and distributing products and services on-line, posting employment opportunities, and providing general corporate information and technical and product support. The bulk of this increased activity is taking place on the World Wide Web ("WWW" or "web"), a resource discovery tool for connecting documents or pages stored on networked computers by virtue of hypertext links. Although the architecture and operation of the web will be briefly summarized below, many resources are available for further background information on the Internet and the web, including December, J. and Randall, N., The World Wide Web Unleashed (Sams.net Publishing 1995) and Stanek, W. R., Web Publishing Unleashed (Sams.net Publishing, 1996).
Web documents are stored on web servers and are provided to client computers over the Internet upon receipt at the web server of a request for the document in the form of a uniform or universal resource locator ("URL"). The URL specifies the communications protocol by which the information is to be transferred and the Internet address of the host or web server upon which the document is stored. The URL may also specify a directory path and file name for the document. The communications protocol for the web is the hypertext transfer protocol ("HTTP"). Other communication protocols for other Internet communication tools include the file transfer protocol or FTP, Gopher, news for the Usenet, telnet, and mailto for electronic mail.
Documents or pages stored on web servers and available over the web are generally formatted in a markup language. Markup language web documents contain text and a number of tags which provide instructions as to how the text should be displayed (e.g., character and paragraph formatting, tables, forms, etc.), which text should be hyperlinked to other pails of the document or other documents, and where other types of content, including graphics and other images, video and audio segments, application programs or applets, image maps, and icons, should be retrieved from and displayed in the document.
One of the most commonly used standardized markup languages is the Hypertext Markup Language ("HTML"), currently available in several versions. Other standardized markup languages include the Standard Generalized Markup Language ("SGML") and Virtual Reality Modeling Language ("VRML"). Some markup languages, such as page definition languages, mark up web documents using a generally proprietary format which is specific to a particular commercial page display application program.
After a web page is transmitted from the web server to a client computer, a program referred to as a browser operates on the client's computer to interpret the tags and perform the formatting and other operations specified in the tags to display the text and other content in the document on the client computer's display. Many types of browser programs are available, including several variations of Mosaic, Netscape Communications Corporation's Netscape Navigator, Microsoft Corporation's Internet Explorer, TradeWave Galaxy's MacWeb, and Oracle's PowerBrowser, to name just a few. Different browsers and different versions of the same browser provide varying functionality in reading and displaying web pages and are operable on a wide variety of different platforms.
Because of the huge and ever increasing number of available web sites (which refers generally to the main or home page and ancillary or sub pages) competing for users' attention, companies recognize the importance of having well designed web sites which are informative, attractive, and user friendly. Much paper and electronic literature has been devoted to explaining techniques and styles for developing good web sites, and companies invest much time, money and effort to develop good, competitive web sites.
Despite its advances in recent years, several problems persist with the web and the Internet in general which may inhibit its continued growth as a useful commercial tool. One such problem is the lack of personalized attention in web sites to users and their specific needs and interests. For example, users accessing a merchant's web site all receive the same catalog displaying the same products at the same prices. However, users have their own particular interests and reasons for accessing a given web site. Because of the substantial time involved for users to download and review documents, users would prefer not to download an entire catalog in order to receive limited information of interest. For example, a user owning a IBM compatible personal computer would prefer not to have to download information regarding Apple compatible computers.
Conversely, in real world settings merchants prefer to enter into direct, one-to-one relationships with customers, and marketing which is more directed and focused towards each customer's interest is generally more effective and results in more sales. However, the almost anonymous nature of the web makes it difficult for merchants to establish that type of relationship on-line. Also, merchants frequently offer price discounts or special prices to certain customers, and otherwise provide individualized responses to customer's requests for assistance and information. Again, the web environment makes it difficult for merchants to offer such individualized attention to their customers.
A related problem is that the multiplicity of types of markup languages and, more significantly, types of browsers makes it difficult for web site developers to develop web pages that are compatible with all conceivable browsers users may be operating. This is particularly true for web pages employing enhanced features which are otherwise desirable to remain competitive and to show users that the web host is on the cutting edge. As a result, web pages often contain statements informing users that their web sites may only or may best be accessed with a given version of a given browser or may not be accessible with particular browsers. Alternatively, web pages contain hyperlinked lists of browsers which are supported by the web server, and users select one of the browsers on the list to hyperlink to a page which supports their selected browser. This adds time and inconvenience to the process of browsing the web and frequently annoys users.
Thus, a methodology is needed for providing web pages to users which are customized and individualized to each user's particular needs and interests. Preferably, this should be done in a manner which is transparent to the user, which does not require the user to search through and download multiple documents, and which does not require the web site developer to design and store a large number of web pages. The present invention provides such a methodology and solves these and other problems associated with the web to help make the web a more effective commercial tool.